iT邦幫忙

2021 iThome 鐵人賽

DAY 10
0

Day 9 我們使用 Order API 建立了一筆測試訂單。

在送出請求的 JSON 字串是這樣的。

圖 10-1
圖 10-1: JSON 字串排版

當時我們建立訂單時的 APIService 欄位是 OrderCreate,這個欄位決定了要請 Order API 做什麼事情,而 Message 欄位則是加密過後的訊息 JSON 字串。

Order API 其它服務

除了建立訂單以外,Order API 還有其它兩個查詢訂單的功能,如下:

批次訂單查詢

  • APIService: OrderQuery

圖 10-2
圖 10-2: 文件第 38 頁 7.2. 訂單交易查詢

需求欄位範例:

圖 10-3
*圖 10-3: OrderQuery 需求欄位

ShopNo 欄位是必填欄位,其餘欄位選填。最大查詢筆數 300 筆。

單筆訂單查詢

  • APIService: OrderPayQuery

圖 10-4
圖 10-4: 文件第 44 頁 7.3. 訊息查詢服務

需求欄位範例:

圖 10-5
*圖 10-5: OrderPayQuery 需求欄位

ShopNoPayToken 欄位皆必填。此功能透過交易完成時跳轉回商店網站的 ReturnURL 參數提供 PayToken 值。或 API 平台透過建立訂單時的 BackendURL 欄位主動傳值通知。

訊息通知

圖 10-6
*圖 10-6: 文件第 47 頁 7.4. 即時訊息通知

這邊的作法是商店網站必須建立一個專門收此訊息通知的網址,然後把該網址當作建立訂單時的 BackendURL 欄位。當完成請款後,永豐金收款平台會主動通知,傳送 Pay Token。商店網站再使用該 Pay Token 查詢訂單狀態。

收款平台 POST 到商店網站的資料範例,同圖 10-5。

總結

這 10 天的文章大家導覽了這份 API 文章,也說明了各項計算所需雜湊值以及加、解密的過程,一直到建立了測試訂單,重點整理如下表格:

項目 文章
取得 Nonce Day 2
取得 HashId Day 3
取得內文雜湊 Day 4
取得 IV Day 5
取得 Sign Day 6
加密 Message Day 7
Order API - OrderCreate Day 8
解密 Message Day 9
Order API - OrderQuery Day 10
Order API - OrderPayQuery Day 10
訊息通知 Day 10

希望對大家有幫助!如有問題也歡迎提問。明天即將發佈 PHP SDK 及使用範例,讓使用 PHP 的開發人員能寫幾行程式碼就能完成這 10 天的所有內容喔!大幅減低串接的門檻,歡迎有興趣的朋友準時收看。

另外 API 文件有錯誤的地方,如下圖:

圖 10-7
*圖 10-7: 文件第 32 頁

ExpBillingDays 的可設定範圍 1-21,但實際上只能給 1-7,超過就會回錯:

E1001 – 自動請款天數設定範圍錯誤,最小值為:1,最大值為:7

請大家多留意一下。


本文更新於筆者的 TerryL 部落格,Day 10 - API 文件導覽總結 - 重點整理,有興趣可前往閱讀及討論。


上一篇
Day 9 - 解密 Order API 回傳的 Message 字串
下一篇
Day 11 - 豐收款非官方 PHP SDK 發佈
系列文
永豐金 API - 豐支付 PHP SDK 設計及 WooCommerce 電商串接實戰30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言